package com.fowo.api.model.tmp.stock.taking;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.ContentStyle;
import com.alibaba.excel.enums.poi.HorizontalAlignmentEnum;
import javax.validation.constraints.*;
import lombok.Getter;
import lombok.Setter;

/** 盘存临时表 导入导出辅助模型 */
@Getter
@Setter
public class TmpStockTakingExcelPo {

  @DateTimeFormat("yyyy年MM月dd日")
  @ExcelProperty(value = "发货日期")
  private java.util.Date reportDate;

  @Size(max = 50, message = "FNSKU长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "FNSKU")
  private String fnsku;

  @Size(max = 50, message = "ASIN长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "ASIN")
  private String asin;

  @Size(max = 50, message = "MSKU长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "MSKU")
  private String msku;

  @Size(max = 50, message = "标题长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "标题")
  private String title;

  @Size(max = 50, message = "类型长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "类型")
  private String eventType;

  @Size(max = 50, message = "交易编号长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "交易编号")
  private String referenceId;

  @Size(max = 50, message = "数量长度不能超过20")
  @ExcelProperty(value = "数量")
  private Integer quantity;

  @Size(max = 50, message = "运营中心长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "运营中心")
  private String fulfillmentCenter;

  @Size(max = 50, message = "库存属性长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "库存属性")
  private String disposition;

  @Size(max = 50, message = "原因code长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "原因code")
  private String reason;

  @Size(max = 50, message = "原因长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "原因")
  private String reasonText;

  @Size(max = 50, message = "国家编码长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "国家编码")
  private String countryCode;

  @Size(max = 50, message = "确定数量长度不能超过20")
  @ExcelProperty(value = "确定数量")
  private Integer reconciledQuantity;

  @Size(max = 50, message = "未确定数量长度不能超过20")
  @ExcelProperty(value = "未确定数量")
  private Integer unreconciledQuantity;

  @ExcelProperty(value = "店铺id")
  private Long sid;

  @Size(max = 50, message = "站点长度不能超过20")
  @ContentStyle(
    horizontalAlignment = HorizontalAlignmentEnum.LEFT,
    dataFormat = 49
  )
  @ExcelProperty(value = "站点")
  private String region;

  @ExcelProperty(value = "国家")
  private Long country;
}
